package cn.yunhe.java.service;

import cn.yunhe.java.object.TableData;
import cn.yunhe.java.pojo.SysRoles;
import cn.yunhe.java.pojo.SysUser;
import cn.yunhe.java.vo.UserRoleSetter;

import java.util.List;

public interface SysUserService {

    /**
     * 根据条件查询用户信息
     * @param loginName
     * @param userStatus
     * @param page 第几页
     * @return  limit 每页显示的数量
     */
    TableData queryByCondition(String loginName,Integer userStatus,int page,int limit);

    /**
     * 修改用户状态
     * @param userId
     * @param userStatus
     * @return
     */
    int updateUserStatus(Integer userId, Integer userStatus);

    /**
     * 保存用户信息
     * @param su
     * @return
     */
    int saveUser(SysUser su);

    /**
     * 根据用户id删除用户信息
     * @param userId
     * @return
     */
    int delUser(Integer userId);

    /**
     * 修改用户信息
     * @param su
     * @return
     */
    int updateUser(SysUser su);

    /**
     * 根据用户id查询用户信息
     * @param userId
     * @return
     */
    SysUser selectByPrimaryKey(Integer userId);

    /**
     * 根据用户id查询角色信息
     * @param userId
     * @return
     */
    List<SysRoles> selectAllRoles(Integer userId);

    /**
     * 设置用户的角色
     * @return
     */
    int doSetRole(UserRoleSetter urs,String userName);
}
